# 给定初始列表`
my_list = [3, "apple", 9, "banana", 7, "cherry", 2, "date", 5, "elderberry"]
# `，执行以下操作：
#
# 1. 向my_list中添加一个元素"fig"。
# my_list.append("fig")

# 2. 从my_list中删除元素"banana"。
# my_list.remove("banana")

# 3. 将元素7修改为字符串"grape"。
# my_list[my_list.index(7)] = "grape"

# 4. 查找并打印元素"cherry"的索引值。
# print(my_list.index("cherry"))

# 5. 遍历my_list并打印每个元素。
# for element in my_list:
#     print(element)

# 6. 在"cherry"后面插入新元素"kiwi"。
my_list.insert(my_list.index("cherry") + 1, "kiwi")

# 7. 使用索引查找并打印第三个元素。
print(my_list[2])

# 8. 使用负数索引找到并打印倒数第二个元素。
print(my_list[-2])

# 9. 使用切片操作获取第三个至第七个元素并打印结果。
print(my_list[2:7])

# 10. 使用切片操作反转整个列表并打印结果。
print(my_list[::-1])

# 11. 对列表中的字符串进行排序，并保留数字在原位。
print(sorted(my_list, key=lambda x: str(x) if isinstance(x, int) else x))

# 12. 将my_list中的数字替换为它们对应的字符串形式（如1->'one'），不改变列表中原有的字符串。
print([str(x) if isinstance(x, int) else x for x in my_list])

print(my_list)